home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 60 / IOPROG_60.ISO / soft / c++ / gsl-1.1.1-setup.exe / {app} / src / specfunc / legendre.h < prev    next >
Encoding:
C/C++ Source or Header  |  2001-11-01  |  2.4 KB  |  73 lines

  1. /* specfunc/legendre.h
  2.  * 
  3.  * Copyright (C) 1996, 1997, 1998, 1999, 2000 Gerard Jungman
  4.  * 
  5.  * This program is free software; you can redistribute it and/or modify
  6.  * it under the terms of the GNU General Public License as published by
  7.  * the Free Software Foundation; either version 2 of the License, or (at
  8.  * your option) any later version.
  9.  * 
  10.  * This program is distributed in the hope that it will be useful, but
  11.  * WITHOUT ANY WARRANTY; without even the implied warranty of
  12.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  13.  * General Public License for more details.
  14.  * 
  15.  * You should have received a copy of the GNU General Public License
  16.  * along with this program; if not, write to the Free Software
  17.  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  18.  */
  19.  
  20. /* Author:  G. Jungman */
  21.  
  22. /* Declare private but non-local support functions
  23.  * used in various Legendre function evaluations.
  24.  */
  25.  
  26. #include <gsl/gsl_sf_result.h>
  27.  
  28.  
  29. /* Large negative mu asymptotic
  30.  * P^{-mu}_{-1/2 + I tau}, mu -> Inf
  31.  * |x| < 1
  32.  */
  33. int
  34. gsl_sf_conicalP_xlt1_large_neg_mu_e(double mu, double tau, double x,
  35.                                        gsl_sf_result * result, double * ln_multiplier);
  36.  
  37.  
  38. /* Large tau uniform asymptotics
  39.  * P^{-mu}_{-1/2 + I tau}, tau -> Inf
  40.  * 1 < x
  41.  */
  42. int
  43. gsl_sf_conicalP_xgt1_neg_mu_largetau_e(const double mu, const double tau,
  44.                                           const double x, double acosh_x,
  45.                                           gsl_sf_result * result, double * ln_multiplier);
  46.  
  47.  
  48. /* Large tau uniform asymptotics
  49.  * P^{-mu}_{-1/2 + I tau}, tau -> Inf 
  50.  * -1 < x < 1
  51.  */
  52. int
  53. gsl_sf_conicalP_xlt1_neg_mu_largetau_e(const double mu, const double tau,
  54.                                           const double x, const double acos_x,
  55.                                           gsl_sf_result * result, double * ln_multiplier);
  56.  
  57.  
  58. /* P^{mu}_{-1/2 + I tau}
  59.  * x->Inf
  60.  *
  61.  *  * This is effective to precision EPS for
  62.  *
  63.  *    (mu^2 + tau^2)/((1 + tau^2)^(1/2) x^2) < EPS^{1/3}
  64.  *
  65.  * since it goes only to a fixed order, based on the
  66.  * representation in terms of hypegeometric functions
  67.  * of argument 1/x^2.
  68.  * [Zhurina+Karmazina, (3.8)]
  69.  */
  70. int
  71. gsl_sf_conicalP_large_x_e(const double mu, const double tau, const double x,
  72.                              gsl_sf_result * result, double * ln_multiplier);
  73.